Many types of communications can be performed over data networks (wireless and/or wireline networks), including electronic mail, web browsing, file downloads, electronic commerce transactions, voice or other forms of real-time, interactive communications, and others. To enable the establishment of communications sessions in a network, various control functions are deployed in the network. Some standards bodies have defined subsystems within communications networks that include such control functions. One such standards body is the Third Generation Partnership Project (3GPP), which has defined an Internet Protocol (IP) multimedia subsystem (IMS) that includes various control functions for provision of IP packet-switched multimedia services, including audio, video, text, chat, or any combination of the foregoing.
Another standards body is the Third Generation Partnership Project 2 (3GPP2), which has defined a multimedia domain (MMD) network to provide various IP multimedia services. In the wireline context, the equivalent of an IP multimedia subsystem is sometimes referred to as a Next Generation Networks (NGN).
In a network environment, such as in any of the networks noted above, there can be various nodes to perform various different tasks. The requirements of the various nodes within such a network environment can be continually changing, such as due to revisions to the relevant standards governing the corresponding type of network or due to updates desired by network service operators. Also, different service operators can also specify different requirements for the network nodes.
Conventionally, network nodes that are provided by an equipment vendor are configured to a specific set of requirements, as specified by current standards and/or by customers (e.g., network service operators). Thus, different versions of a particular network node may have to be developed by the equipment vendor for use with different standards versions and/or for different customers.
Each different version of a network node is associated with a corresponding different release stream, where a “release stream” can include product development (e.g., development of software to be incorporated in the node), product testing, and release to customers. Having to implement different release streams for different versions of a network node can result in increased development, integration, verification, product management, maintenance, and support costs.